package ${package_controller};
import ${package_core_dao_model}.${domainModelNameUpper};
import ${package_service}.${domainModelNameUpper}Service;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import javax.annotation.Resource;
import ${abstract_controller_class_reference};
import org.springframework.web.bind.annotation.*;
import ${base_result_class_reference};

/**
 * <p>
 *
 * </p>
 *
 * @author ${author}
 * @version V1.0.0
 * @date ${create_time}
 * @modificationHistory=========================逻辑或功能性重大变更记录
 * @modify By: {修改人}  ${create_time}
 * @modify reason: {方法名}:{原因}
 * ...
 */
@Slf4j
@RestController
@RequestMapping("/${sign}/${domainModelNameLower}/")
public class ${domainModelNameUpper}Controller extends ${abstract_controller_class_reference_name}<${domainModelNameUpper}>{

    @Resource
    ${domainModelNameUpper}Service ${domainModelNameLower}Service;

    @Override
    @RequestMapping(value="addition", method = RequestMethod.POST)
    public ${base_result_class_reference_name} add(@RequestBody ${domainModelNameUpper} ${domainModelNameLower}) {
        return new ${base_result_class_reference_name}();
    }

    @Override
    @RequestMapping(value="deletion", method = RequestMethod.POST)
    public  ${base_result_class_reference_name} delete(@RequestParam String id) {
        return new  ${base_result_class_reference_name}();
    }

    @Override
    @RequestMapping(value="update", method = RequestMethod.POST)
    public  ${base_result_class_reference_name} update(@RequestBody ${domainModelNameUpper} ${domainModelNameLower}) {
        return new  ${base_result_class_reference_name}();
    }

    @Override
    @RequestMapping(value="detail", method = RequestMethod.POST)
    public  ${base_result_class_reference_name} detail(@RequestParam String id) {
        return new  ${base_result_class_reference_name}();
    }
}